package com.ucode.model.hrm;

import com.ucode.tool.base.BaseTenantMode;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;

import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * 工资条
 * @Author: Administrator
 * @Date: 2025/5/17 11:29
 * @Version: 1.0
 */
@Schema(description = "人力资源管理系统 - 工资条")
@Data
@EqualsAndHashCode
@ToString(callSuper = true)
public class HrmPaySlip extends BaseTenantMode<Long,Long> {

    /**
     * 公司ID
     */
    private Long companyId;
    /**
     * 项目ID
     */
    private Long projectId;
    /**
     * 员工ID
     */
    private Long employeeId;

    /** 姓名 */
    private String employeeName;

    /** 身份证号 */
    private String idCard;

    /** 费用月份（存储当月1号） */
    private LocalDate feeMonth;

    /** 应发合计 */
    private BigDecimal totalPayable = BigDecimal.ZERO;

    /** 实发工资 */
    private BigDecimal netSalary = BigDecimal.ZERO;

    /**
     * 明细信息，存储JSON数据
     */
    private String detailInfo;

    /**
     * 备注
     */
    private String remark;
    /**
     * 员工是否可见
     */
    private Boolean visible;
    /**
     * 费用ID
     */
    private Long costId;
    /**
     * 批次号
     */
    private String batchnum;
}
